<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
	<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
	<title></title>
</head>
<body>
  <ul>
  	<li><input type="checkbox" name="fav" />2015-12-17</li>
  	<li><input type="checkbox" name="fav" />2015-12-18</li>
  	<li><input type="checkbox" name="fav" />2015-12-19</li>
  	<li><input type="checkbox" name="fav" />2015-12-20</li>
  	<li><input type="checkbox" name="fav" />2015-12-21</li>
  </ul>
  <button id="all">全选</button>
  <button id="no">全不选</button>
  <button id="unselected">反选</button>
  <script type="text/javascript">
    var fav = document.getElementsByName('fav');
    
    //全选功能
    var all = document.getElementById('all'); //获取全选按钮元素
    //获取所有的 name="fav" 的按钮元素
    all.onclick = function(){  //当 all被点击的时候
      for(var i = 0;i<fav.length;i++){//把所有fav元素 的checked改成true
        fav[i].checked=true;
      }
    }
    
    //全不选功能
    var no = document.getElementById('no'); //获取全不选按钮元素
    no.onclick = function(){  //当 no 被点击的时候
      for(var i = 0; i<fav.length;i++){ //把所有fav元素 的checked改成false
        fav[i].checked = false;
      }
    }

    //反选功能
    var unselected = document.getElementById('unselected'); //获取反选按钮元素
    unselected.onclick = function(){
      for(var i=0;i<fav.length;i++){
        //把每一个的按钮的值，假的变成真的，真的变成假的
        fav[i].checked = !fav[i].checked; //把值取反
        /*
        if(fav[i].checked != true){  //判断值是否是真,真的就改成假。
          fav[i].checked = true;
        }else{
          fav[i].checked = false;
        }
        */
      }
    }
    
  </script>
</body>
</html>